//
//
//
//

#ifndef _WORK_THREAD_H_
#define _WORK_THREAD_H_

#include "common.h"
#include "BaseJob.h"

class ThreadManager;
class WorkThread
{
	public:
		WorkThread(ThreadManager* pMan);
		~WorkThread();

		void SetJob(BaseJob* pJob);
		void Start();
		void Report(std::ostream& os);

		pthread_t GetThreadID(void){return _threadID;}
	private:
		WorkThread(const WorkThread& thread){};
		WorkThread& operator= (const WorkThread& thread){return *this;}

		pthread_t _threadID;
		BaseJob* 	_job;
		long 		_idleSecs;
		long 		_busySecs;
};

#endif // _WORK_THREAD_H_
